package com.tjetc;

import java.util.Scanner;

public class _8HomeWork {
    public static void main(String[] args) {
        /*
        3. 根据⽤于指定⽉份，打印该⽉份所属的季节。3,4,5 春季 6,7,8 夏季 9, 10, 11 秋季 12, 1, 2 冬季。提示：使⽤穿透
         */
        int month = 5;
        switch (month) {
            case 3:
            case 4:
            case 5:
                System.out.println("春季");
                break;
            case 6:
            case 7:
            case 8:
                System.out.println("夏季");
                break;
            case 9:
            case 10:
            case 11:
                System.out.println("秋季");
                break;
            case 12:
            case 1:
            case 2:
                System.out.println("冬季");
                break;
            default:
        }
    }
    public static void main3(String[] args) {
        /*
            2. 对学⽣成绩⼤于 60 分的，输出"合格"。低于 60 分的，输出"不合格"。(注：输⼊的成绩不能
            ⼤于100)。 提示：成绩/60结果来判断 使用switch 不能用double 可以用int

            int（80.0 / 60） = 1.3....
            50 / 60 = 0.8...

            思路分析：
            1.输入
                成绩
                double score = 输入的
            2.输出
                根据不同条件输入对应信息
            3.处理逻辑
                使用判断 双分支
                条件：
                    score >= 0  score <= 100
                true：
                    通过switch多分支
                    结果表达式：(int)(score / 60)
                    case1: 1
                        输出合格
                    case2: 0
                        输出不合格
                false：
                    输出的成绩有误
         */
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入成绩：");
        double score = scanner.nextDouble();
        if (score >= 0 && score <= 100) {
            switch ((int)(score / 60)) {
                case 1:
                    System.out.println("及格");
                    break;
                case 0:
                    System.out.println("不及格");
                    break;
                default:
            }
        } else {
            System.out.println("输入的成绩有误");
        }
    }
    public static void main2(String[] args) {
        /*
            出票系统：根据淡旺季的⽉份和年龄，打印票价
            旺季（4-10⽉份）：
                成⼈(18-60):60
                ⼉童(<18):半价
                ⽼⼈(>60):1/3
            淡季：
                成⼈：40
                其他：20
          思路分析：
          1.输入
                月份
                int month = 输入
                年龄
                int age = 输入
          2.输出
                票价
          3.处理逻辑
                使用判断 双分支
                条件 month >= 4 month <= 10 &&
                true:
                    使用多分支
                    条件1: age > 60
                    true: 20
                    条件2: age >= 18
                    true: 60
                    else:
                        30
                false:
                    使用双分支
                    条件：age >= 18
                    true：40
                    false: 20
         */
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入月份：");
        int month = scanner.nextInt();
        System.out.println("请输入年龄：");
        int age = scanner.nextInt();
        if (month >= 4 && month <= 10) {
            if (age > 60) {
                System.out.println(20);
            } else if (age >= 18) {
                System.out.println(60);
            } else {
                System.out.println(30);
            }
        } else {
            if (age >= 18) {
                System.out.println(40);
            } else {
                System.out.println(20);
            }
        }
        // 优化
        int ticket = 60;
        if (month >= 4 && month <= 10) {
            if (age > 60) {
                System.out.println(ticket / 3);
            } else if (age >= 18) {
                System.out.println(ticket);
            } else {
                System.out.println(ticket / 2);
            }
        } else {
            if (age >= 18) {
                System.out.println(ticket * 2 / 3);
            } else {
                System.out.println(ticket / 3);
            }
        }


    }
    public static void main1(String[] args) {
        /*
            参加歌⼿⽐赛，如果初赛成绩⼤于 8.0 进⼊决赛，否则提示淘汰。
            并且根据性别提示进⼊男⼦组或⼥⼦组。
            输⼊成绩和性别，进⾏判断和输出信息。
            提示: double score; char gender;
            接收字符: char gender = scanner.next().charAt(0)

            思路分析：
            1.输入
                成绩
                double score = 输入
                性别
                char gender = 输入
            2.输出
                根据条件进行文本输出
            3.处理逻辑
                使用判断 双分支
                条件：score > 8.0
                true：
                    使用判断 双分支
                    条件：gender == '男'
                    true：输出进入男子组
                    false：输出进入女子组
                false：输出淘汰
         */

        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入成绩：");
        double score = scanner.nextDouble();
        if (score > 8.0) {
            System.out.println("请输入性别：");
            char gender = scanner.next().charAt(0);
            if (gender == '男') {
                System.out.println("进入男子组");
            } else {
                System.out.println("进入女子组");
            }
        } else {
            System.out.println("淘汰");
        }
    }
}
